The Internet provides a vast amount of information. The individual pieces of information are often referred to as “network resources” or “network contents” and may have various formats, such as, for example and without limitation, texts, audios, videos, images, web pages, documents, executables, etc. The network resources are stored at many different sites, such as on computers and servers, in databases, etc., around the world. These different sites are communicatively linked to the Internet through various network infrastructures. Any person may access the publicly available network resources via a suitable network device (e.g., a computer, a smart mobile telephone, etc.) connected to the Internet.
However, due to the sheer amount of information available on the Internet, it is impractical as well as impossible for a person (e.g., a network user) to manually search throughout the Internet for specific pieces of information. Instead, most network users rely on different types of computer-implemented tools to help them locate the desired network resources. One of the most commonly and widely used computer-implemented tools is a search engine, such as the search engines provided by Microsoft® Inc., Yahoo!® Inc., and Google® Inc. To search for information relating to a specific subject matter or topic on the Internet, a network user typically provides a short phrase or a few keywords describing the subject matter, often referred to as a “search query” or simply a “query”, to a search engine. The search engine conducts a search based on the search query using various search algorithms and generates a search result that identifies network resources that are most likely to be related to the search query. The network resources are presented to the network user, often in the form of a list of links, each link being associated with a different network document (e.g., a web page) that contains some of the identified network resources. In particular embodiments, each link is in the form of a Uniform Resource Locator (URL) that specifies where the corresponding network document is located and the mechanism for retrieving it. The network user is then able to click on the URL links to view the specific network resources contained in the corresponding document as he wishes.
Sophisticated search engines implement many other functionalities in addition to merely identifying the network resources as a part of the search process. For example, a search engine usually ranks the identified network resources according to their relative degrees of relevance with respect to the search query, such that the network resources that are relatively more relevant to the search query are ranked higher and consequently are presented to the network user before the network resources that are relatively less relevant to the search query. The search engine may also provide a short summary of each of the identified network resources.
There are continuous efforts to improve the qualities of the search results generated by the search engines. Accuracy, completeness, presentation order, and speed are but a few of the performance aspects of the search engines for improvement.